/**
 * 通用工具类
 */

import { Fish } from "../game/Fish";

const { ccclass, property } = cc._decorator;

@ccclass
export class BaseUtil {

    /**
     * 生成范围内的随机数
     * @param min 最小
     * @param max 最大
     */
    public static randomNum(min: number, max: number) {
        return Math.floor(Math.random() * (max - min) + min);
    }


    /**
     * 判断是否空值
     * 
     * @param value 值
     */
    public static isEmpty(value: any) {
        if (typeof (value) === 'undefined') {
            return true;
        }

        if (value === null || value === '') {
            return true;
        }

        return false;
    }

    /**
     * 
     * @param value 角度转换函数，负值转为正值
     */
    public static conversion(value: number) {
        if (value <= 0) {
            value += 360;
        }
        return value;
    }

    /**
     * 获取触点位置
     * @param event 
     */
    public static getContact(event: cc.Event.EventTouch) {
        return event.getLocation();
    }

    /**
     * 获取当前时间戳,精确到毫秒
     */
    public static getTimestamp() {
        return new Date().getTime()
    }

    /**
     * 生成唯一的名字
     * @param name 
     * @param type 编号
     */
    public static genSoleName(name: string, type: number) {
        return name + '_' + type + '_' + this.getTimestamp() + '_' + this.randomNum(100000, 999999);
    }

}
